int visit[maxn],in[maxn];
double dis[maxn];
int spfa(int u)
{
    if(visit[u]) return 0;
    int i,j,e,v;
    visit[u]=1;
    for(e=first[u];e!=-1 ;e=next[e])
    {
        v=E[e];
        if(dis[v]<dis[u]+C[e])
        {
            dis[v]=dis[u]+C[e];
             if(!spfa(v))
                 return 0;
        }
    }
    visit[u]=0;
    return 1;
}

